Mobile Robot Morphology

ABSTRACT

In an embodiment, a mobile robotic device includes a mobile base and a mounting column fixed to the mobile base. The robotic device further includes a seven-degree-of-freedom (7DOF) robotic arm, including a rotatable joint that enables rotation of the 7DOF robotic arm relative to the mounting column. The robotic device additionally includes a perception housing comprising at least one sensor, where the mounting column, the rotatable joint of the 7DOF arm, and the perception housing are arranged in a stacked tower such that the rotatable joint of the 7DOF arm is above the mounting column and below the perception housing.

CROSS-REFERENCE TO RELATED APPLICATIONS

The present application claims priority to U.S. provisional application No. 62/853,534 filed on May 28, 2019 and entitled “Mobile Robot Morphology” which is herein incorporated by reference as if fully set forth in this description.

BACKGROUND

As technology advances, various types of robotic devices are being created for performing a variety of functions that may assist users. Robotic devices may be used for applications involving material handling, transportation, welding, assembly, and dispensing, among others. Over time, the manner in which these robotic systems operate is becoming more intelligent, efficient, and intuitive. As robotic systems become increasingly prevalent in numerous aspects of modern life, it is desirable for robotic systems to be efficient. Therefore, a demand for efficient robotic systems has helped open up a field of innovation in actuators, movement, sensing techniques, as well as component design and assembly.

SUMMARY

Example embodiments involve a mobile robot that is optimized for arm range of motion, space utilization, efficient arm stowing, and occlusion avoidance between a perception system and an end of arm system.

In an embodiment, a mobile robotic device includes a mobile base and a mounting column fixed to the mobile base. The robotic device further includes a seven-degree-of-freedom (7DOF) robotic arm, including a rotatable joint that enables rotation of the 7DOF robotic arm relative to the mounting column. The robotic device additionally includes a perception housing comprising at least one sensor, where the mounting column, the rotatable joint of the 7DOF arm, and the perception housing are arranged in a stacked tower such that the rotatable joint of the 7DOF arm is above the mounting column and below the perception housing.

In another embodiment, a robotic arm comprises a shoulder yaw J0 joint, a shoulder pitch J1 joint, a bicep roll J2 joint, an elbow pitch J3 joint, a forearm roll J4 joint, a wrist pitch J5 joint, and a wrist roll J6 joint, where a first offset between the shoulder yaw J0 joint and a bicep roll J2 joint is approximately equal to a second offset between the bicep roll J2 joint and the forearm roll J4 joint, and where the bicep is approximately equal in length to the forearm.

In a further embodiment, a method is provided that includes causing a shoulder yaw J0 joint of a 7DOF robotic arm of a mobile robotic device to rotate away from a first end of a mobile base to which a mounting column is fixed, where the mounting column, the shoulder yaw J0 joint of the 7DOF arm, and a perception housing of the mobile robotic device are arranged in a stacked tower such that the shoulder yaw J0 joint of the 7DOF arm is above the mounting column and below the perception housing. The method further includes causing a shoulder pitch J1 joint of the 7DOF robotic arm of the mobile robotic device to rotate vertical up. The method additionally includes causing an elbow pitch J3 joint to rotate vertical down. The method also includes causing a wrist pitch J5 joint to rotate vertical down to position the 7DOF robotic arm in a shoulder up stowed configuration.

In another embodiment, a system is provided that includes means for causing a shoulder yaw J0 joint of a 7DOF robotic arm of a mobile robotic device to rotate away from a first end of a mobile base to which a mounting column is fixed, where the mounting column, the shoulder yaw J0 joint of the 7DOF arm, and a perception housing of the mobile robotic device are arranged in a stacked tower such that the shoulder yaw J0 joint of the 7DOF arm is above the mounting column and below the perception housing. The system further includes means for causing a shoulder pitch J1 joint of the 7DOF robotic arm of the mobile robotic device to rotate vertical up. The system additionally includes means for causing an elbow pitch J3 joint to rotate vertical down. The system also includes means for causing a wrist pitch J5 joint to rotate vertical down to position the 7DOF robotic arm in a shoulder up stowed configuration.

In a further embodiment, a mobile robotic device is provided comprising a mobile base, a mounting column fixed to the mobile base, a rotatable joint that enables rotation of an appendage relative to the mounting column, and a perception housing comprising at least one sensor, wherein the mounting column, the rotatable joint, and the perception housing are arranged in a stacked tower such that the rotatable joint is above the mounting column and below the perception housing.

The foregoing summary is illustrative only and is not intended to be in any way limiting. In addition to the illustrative aspects, embodiments, and features described above, further aspects, embodiments, and features will become apparent by reference to the figures and the following detailed description and the accompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates a configuration of a robotic system, in accordance with example embodiments.

FIG. 2 illustrates a mobile robot, in accordance with example embodiments.

FIG. 3 illustrates an exploded view of a mobile robot, in accordance with example embodiments.

FIG. 4 illustrates a robotic arm, in accordance with example embodiments.

FIG. 5 illustrates joint ranges of motion, in accordance with example embodiments.

FIGS. 6A, 6B, and 6C illustrate robot dimensions, in accordance with example embodiments.

FIGS. 7A and 7B, FIGS. 8A and 8B, and FIGS. 9A and 9B illustrate stowed configurations, in accordance with example embodiments.

FIG. 10, FIG. 11, FIG. 12, and FIG. 13 illustrate robotic arm configurations to facilitate perception of an end of arm system, in accordance with example embodiments.

FIGS. 14A and 14B show attachment of an appendage to a rotatable joint, in accordance with example embodiments.

FIG. 15 shows positions of a rotatable joint having an attached appendage, in accordance with example embodiments.

FIG. 16 shows positions of a rotatable joint having an attached appendage, in accordance with example embodiments.

DETAILED DESCRIPTION

Example methods, devices, and systems are described herein. It should be understood that the words “example” and “exemplary” are used herein to mean “serving as an example, instance, or illustration.” Any embodiment or feature described herein as being an “example” or “exemplary” is not necessarily to be construed as preferred or advantageous over other embodiments or features unless indicated as such. Other embodiments can be utilized, and other changes can be made, without departing from the scope of the subject matter presented herein.

Thus, the example embodiments described herein are not meant to be limiting. It will be readily understood that the aspects of the present disclosure, as generally described herein, and illustrated in the figures, can be arranged, substituted, combined, separated, and designed in a wide variety of different configurations.

Throughout this description, the articles “a” or “an” are used to introduce elements of the example embodiments. Any reference to “a” or “an” refers to “at least one,” and any reference to “the” refers to “the at least one,” unless otherwise specified, or unless the context clearly dictates otherwise. The intent of using the conjunction “or” within a described list of at least two terms is to indicate any of the listed terms or any combination of the listed terms.

The use of ordinal numbers such as “first,” “second,” “third” and so on is to distinguish respective elements rather than to denote a particular order of those elements. For the purpose of this description, the terms “multiple” and “a plurality of” refer to “two or more” or “more than one.”

Further, unless context suggests otherwise, the features illustrated in each of the figures may be used in combination with one another. Thus, the figures should be generally viewed as component aspects of one or more overall embodiments, with the understanding that not all illustrated features are necessary for each embodiment. In the figures, similar symbols typically identify similar components, unless context dictates otherwise. Further, unless otherwise noted, figures are not drawn to scale and are used for illustrative purposes only. Moreover, the figures are representational only and not all components are shown. For example, additional structural or restraining components might not be shown.

Additionally, any enumeration of elements, blocks, or steps in this specification or the claims is for purposes of clarity. Thus, such enumeration should not be interpreted to require or imply that these elements, blocks, or steps adhere to a particular arrangement or are carried out in a particular order.

I. OVERVIEW

Described herein is an example robotic device along with example operations that may be performed by the example robotic device and/or variations thereof. The example robotic device may include a number of components coupled together, including a mobile base, an arm, an end of arm system (EOAS), a midsection, a mast, and a perception housing. The arm may include particular degrees of freedom (DOFs), ranges of motion (ROMs), joint types, link lengths, and joint offsets to optimize the performance of tasks. Tradeoffs exist in terms of desired operational capabilities of the robot relative to space constraints and cost constraints. Some example robots described herein are engineered to simplify manufacturing and programming, making the robots affordable for non-industrial applications.

In general, a robotic device described herein may be used in a plurality of settings and may be configured to perform operations corresponding to each setting. For example, the robotic device may be used as a household aid robot. The robotic device may be configured to collect and load laundry into a hamper or washer, clean the floor by collecting garbage, clean up toys by gathering the toys and loading them into a toy storage bin, move pieces of furniture into their proper positions, and fetch drinks, food, and keys, among other possible tasks. The robotic device may additionally be used as a yard work aid robot to perform certain yard work such as sweeping up and gathering fallen leaves, sticks, and any other undesirable items that may be left in a back or front yard. The robotic device may be configured to perform any of the operations described herein autonomously in order to reduce an amount of human input needed to control the robotic device.

An example robot includes a mobile base, such as a wheeled base. The robot additionally includes a mounting column which is fixed to the mobile base. The robot additionally includes a 7DOF robotic arm with a rotational joint that allows for rotation of the robotic arm relative to the mounting column. The robot additionally includes a perception housing with at least one sensor for perception. The mounting column, rotational joint of the arm, and the perception housing may be arranged in a stacked tower. Each component of the stacked tower may be coaxial. This arrangement may facilitate perception of an object being held or otherwise manipulated by an end effector of the robotic arm.

The stacked tower may be positioned at a front side of the mobile base over one or more drive wheels. The mobile base may additionally include a rear section behind the stacked tower. The rear section may include a flat or relatively flat top surface. The rear section may include a container for stowing objects manipulated by the robot, such as a basket or a bin. This arrangement allows the robotic arm to rotate toward the front of the robot in order to pick up an object, and then rotate toward the back of the robot to place the object on the rear section of the mobile base (e.g., on the flat surface or into a container). The same process may be repeated to efficiently perform a reverse process by moving objects currently stored on the back of the robot into the environment of the robot with the robotic arm.

Example embodiments also allow for efficient stowing of the robotic arm when the arm is not being used for manipulation. In particular, the robotic arm may be folded into a predetermined stowed configuration over the rear section of the mobile base. In some examples, the stowed configuration allows the robotic arm to be fully positioned within the footprint of the mobile base (so that no portion of the robotic arm hangs over an edge of the mobile base). To optimize space constraints, the mobile base may be designed so that the stowed configuration causes a point of the robotic arm to reach (or come within a small distance of) the rear end and/or the sides of the mobile base.

Multiple stowed configurations are possible for the example robots described herein (e.g., a shoulder up stowed configuration and a shoulder down stowed configuration). The kinematics of the robotic arm (including joint ROMs, joint offsets, and link lengths) may be chosen to facilitate transitioning the robotic arm between an active pose and a stowed configuration. In examples where multiple stowed configurations are possible, the robot may choose between stowed configurations based on which stowed configuration is easier to reach from the current active position of the robotic arm and/or based on which stowed configuration will make it easier for the robot to reach a next planned active position of the robotic arm.

After the robotic arm is folded into a stowed configuration, the robot may then navigate with the mobile base while maintaining the robotic arm fixed in the stowed configuration. The robot may later stop navigating with the mobile base and then return the robotic arm to an active position in order to manipulate an object or perform some other task in the environment.

In order to optimize overall range of motion while maintaining a compact form, the robot may be designed to be relatively tall and narrow. For instance, the height of the robot to the top of the perception housing may be more than double the length of the mobile base and more than three times the width of the mobile base. A tall, narrow stacked tower allows for a relatively long mast component between the perception housing and the rotatable joint of the 7DOF robotic arm. This arrangement facilitates perception of an end effector of the robotic arm with perception capabilities in the perception housing, whereas other robots may often end up with occlusions caused by a part of a robotic arm being between an object in a gripper and a sensor on the robot.

To further improve visibility between the sensors in the perception housing and the EOAS, the robotic arm may be given seven DOFs. By using seven DOFs, an extra DOF is available to choose an arm configuration that facilitates perception while placing the EOAS at a target pose in the environment. More specifically, a bicep of the robotic arm may be provided with a bicep roll joint to roll a forearm out of the way in order to improve the perception of an object being manipulated by an end effector of the robotic arm.

Link lengths and joint offsets may be chosen for the robotic arm to optimize manipulation capabilities while also facilitating efficient stowing of the robotic arm. By using joint offsets instead of intersecting axes, the upper joints of the robot may be optimized for stowing and range of motion. More specifically, a first offset between the rotational joint in the tower and a roll joint in the bicep may be set equal to or approximately equal (e.g., within 10 percent) to a second offset between the roll joint in the bicep and a roll joint in the forearm. The length of the bicep may also be set equal to or approximately equal (e.g., within 10 percent) to the length of the forearm. This arrangement advantageously allows for one offset to compensate for the other offset and/or one link length to compensate for the other link length. Using the same or approximately the same offset between these two relatively long consecutive links also improves the workspace by facilitating kinematic computations. The offsets may be set large enough (e.g., 25 millimeter gaps) to avoid pinch points that could harm a user. In alternative examples, the two offsets may be significantly different from each other and/or the two link lengths may be significantly different from each other.

II. EXAMPLE ROBOTIC SYSTEMS

FIG. 1 illustrates an example configuration of a robotic system that may be used in connection with the implementations described herein. Robotic system 100 may be configured to operate autonomously, semi-autonomously, or using directions provided by user(s). Robotic system 100 may be implemented in various forms, such as a robotic arm, industrial robot, or some other arrangement. Some example implementations involve a robotic system 100 engineered to be low cost at scale and designed to support a variety of tasks. Robotic system 100 may be designed to be capable of operating around people. Robotic system 100 may also be optimized for machine learning. Throughout this description, robotic system 100 may also be referred to as a robot, robotic device, or mobile robot, among other designations.

As shown in FIG. 1, robotic system 100 may include processor(s) 102, data storage 104, and controller(s) 108, which together may be part of control system 118. Robotic system 100 may also include sensor(s) 112, power source(s) 114, mechanical components 110, and electrical components 116. Nonetheless, robotic system 100 is shown for illustrative purposes, and may include more or fewer components. The various components of robotic system 100 may be connected in any manner, including wired or wireless connections. Further, in some examples, components of robotic system 100 may be distributed among multiple physical entities rather than a single physical entity. Other example illustrations of robotic system 100 may exist as well.

Processor(s) 102 may operate as one or more general-purpose hardware processors or special purpose hardware processors (e.g., digital signal processors, application specific integrated circuits, etc.). Processor(s) 102 may be configured to execute computer-readable program instructions 106, and manipulate data 107, both of which are stored in data storage 104. Processor(s) 102 may also directly or indirectly interact with other components of robotic system 100, such as sensor(s) 112, power source(s) 114, mechanical components 110, or electrical components 116.

Data storage 104 may be one or more types of hardware memory. For example, data storage 104 may include or take the form of one or more computer-readable storage media that can be read or accessed by processor(s) 102. The one or more computer-readable storage media can include volatile or non-volatile storage components, such as optical, magnetic, organic, or another type of memory or storage, which can be integrated in whole or in part with processor(s) 102. In some implementations, data storage 104 can be a single physical device. In other implementations, data storage 104 can be implemented using two or more physical devices, which may communicate with one another via wired or wireless communication. As noted previously, data storage 104 may include the computer-readable program instructions 106 and data 107. Data 107 may be any type of data, such as configuration data, sensor data, or diagnostic data, among other possibilities.

Controller 108 may include one or more electrical circuits, units of digital logic, computer chips, or microprocessors that are configured to (perhaps among other tasks), interface between any combination of mechanical components 110, sensor(s) 112, power source(s) 114, electrical components 116, control system 118, or a user of robotic system 100. In some implementations, controller 108 may be a purpose-built embedded device for performing specific operations with one or more subsystems of the robotic system 100.

Control system 118 may monitor and physically change the operating conditions of robotic system 100. In doing so, control system 118 may serve as a link between portions of robotic system 100, such as between mechanical components 110 or electrical components 116. In some instances, control system 118 may serve as an interface between robotic system 100 and another computing device. Further, control system 118 may serve as an interface between robotic system 100 and a user. In some instances, control system 118 may include various components for communicating with robotic system 100, including a joystick, buttons, or ports, etc. The example interfaces and communications noted above may be implemented via a wired or wireless connection, or both. Control system 118 may perform other operations for robotic system 100 as well.

During operation, control system 118 may communicate with other systems of robotic system 100 via wired or wireless connections, and may further be configured to communicate with one or more users of the robot. As one possible illustration, control system 118 may receive an input (e.g., from a user or from another robot) indicating an instruction to perform a requested task, such as to pick up and move an object from one location to another location. Based on this input, control system 118 may perform operations to cause the robotic system 100 to make a sequence of movements to perform the requested task. As another illustration, a control system may receive an input indicating an instruction to move to a requested location. In response, control system 118 (perhaps with the assistance of other components or systems) may determine a direction and speed to move robotic system 100 through an environment en route to the requested location.

Operations of control system 118 may be carried out by processor(s) 102. Alternatively, these operations may be carried out by controller(s) 108, or a combination of processor(s) 102 and controller(s) 108. In some implementations, control system 118 may partially or wholly reside on a device other than robotic system 100, and therefore may at least in part control robotic system 100 remotely.

Mechanical components 110 represent hardware of robotic system 100 that may enable robotic system 100 to perform physical operations. As a few examples, robotic system 100 may include one or more physical members, such as an arm, an end effector, a perception housing, a mast, a midsection, a base, and wheels. The physical members or other parts of robotic system 100 may further include actuators arranged to move the physical members in relation to one another. Robotic system 100 may also include one or more structured bodies for housing control system 118 or other components, and may further include other types of mechanical components. The particular mechanical components 110 used in a given robot may vary based on the design of the robot, and may also be based on the operations or tasks the robot may be configured to perform.

In some examples, mechanical components 110 may include one or more removable components. Robotic system 100 may be configured to add or remove such removable components, which may involve assistance from a user or another robot. For example, robotic system 100 may be configured with removable end effectors or digits that can be replaced or changed as needed or desired. In some implementations, robotic system 100 may include one or more removable or replaceable battery units, control systems, power systems, bumpers, or sensors. Other types of removable components may be included within some implementations.

Robotic system 100 may include sensor(s) 112 arranged to sense aspects of robotic system 100. Sensor(s) 112 may include one or more force sensors, torque sensors, velocity sensors, acceleration sensors, position sensors, proximity sensors, motion sensors, location sensors, load sensors, temperature sensors, touch sensors, depth sensors, ultrasonic range sensors, infrared sensors, object sensors, or cameras, among other possibilities. Within some examples, robotic system 100 may be configured to receive sensor data from sensors that are physically separated from the robot (e.g., sensors that are positioned on other robots or located within the environment in which the robot is operating).

Sensor(s) 112 may provide sensor data to processor(s) 102 (perhaps by way of data 107) to allow for interaction of robotic system 100 with its environment, as well as monitoring of the operation of robotic system 100. The sensor data may be used in evaluation of various factors for activation, movement, and deactivation of mechanical components 110 and electrical components 116 by control system 118. For example, sensor(s) 112 may capture data corresponding to the terrain of the environment or location of nearby objects, which may assist with environment recognition and navigation.

In some examples, sensor(s) 112 may include RADAR (e.g., for long-range object detection, distance determination, or speed determination), LIDAR (e.g., for short-range object detection, distance determination, or speed determination), SONAR (e.g., for underwater object detection, distance determination, or speed determination), VICON® (e.g., for motion capture), one or more cameras (e.g., stereoscopic cameras for 3D vision), a global positioning system (GPS) transceiver, or other sensors for capturing information of the environment in which robotic system 100 is operating. Sensor(s) 112 may monitor the environment in real time, and detect obstacles, elements of the terrain, weather conditions, temperature, or other aspects of the environment. In another example, sensor(s) 112 may capture data corresponding to one or more characteristics of a target or identified object, such as a size, shape, profile, structure, or orientation of the object.

Further, robotic system 100 may include sensor(s) 112 configured to receive information indicative of the state of robotic system 100, including sensor(s) 112 that may monitor the state of the various components of robotic system 100. Sensor(s) 112 may measure activity of systems of robotic system 100 and receive information based on the operation of the various features of robotic system 100, such as the operation of an extendable arm, an end effector, other mechanical or electrical features of robotic system 100. The data provided by sensor(s) 112 may enable control system 118 to determine errors in operation as well as monitor overall operation of components of robotic system 100.

As an example, robotic system 100 may use force/torque sensors to measure load on various components of robotic system 100. In some implementations, robotic system 100 may include one or more force/torque sensors on an arm or end effector to measure the load on the actuators that move one or more members of the arm or end effector. In some examples, the robotic system 100 may include a force/torque sensor at or near the wrist or end effector, but not at or near other joints of a robotic arm. In further examples, robotic system 100 may use one or more position sensors to sense the position of the actuators of the robotic system. For instance, such position sensors may sense states of extension, retraction, positioning, or rotation of the actuators on an arm or end effector.

As another example, sensor(s) 112 may include one or more velocity or acceleration sensors. For instance, sensor(s) 112 may include an inertial measurement unit (IMU). The IMU may sense velocity and acceleration in the world frame, with respect to the gravity vector. The velocity and acceleration sensed by the IMU may then be translated to that of robotic system 100 based on the location of the IMU in robotic system 100 and the kinematics of robotic system 100.

Robotic system 100 may include other types of sensors not explicitly discussed herein. Additionally or alternatively, the robotic system may use particular sensors for purposes not enumerated herein.

Robotic system 100 may also include one or more power source(s) 114 configured to supply power to various components of robotic system 100. Among other possible power systems, robotic system 100 may include a hydraulic system, electrical system, batteries, or other types of power systems. As an example illustration, robotic system 100 may include one or more batteries configured to provide charge to components of robotic system 100. Some of mechanical components 110 or electrical components 116 may each connect to a different power source, may be powered by the same power source, or be powered by multiple power sources.

Any type of power source may be used to power robotic system 100, such as electrical power or a gasoline engine. Additionally or alternatively, robotic system 100 may include a hydraulic system configured to provide power to mechanical components 110 using fluid power. Components of robotic system 100 may operate based on hydraulic fluid being transmitted throughout the hydraulic system to various hydraulic motors and hydraulic cylinders, for example. The hydraulic system may transfer hydraulic power by way of pressurized hydraulic fluid through tubes, flexible hoses, or other links between components of robotic system 100. Power source(s) 114 may charge using various types of charging, such as wired connections to an outside power source, wireless charging, combustion, or other examples.

Electrical components 116 may include various mechanisms capable of processing, transferring, or providing electrical charge or electric signals. Among possible examples, electrical components 116 may include electrical wires, circuitry, or wireless communication transmitters and receivers to enable operations of robotic system 100. Electrical components 116 may interwork with mechanical components 110 to enable robotic system 100 to perform various operations. Electrical components 116 may be configured to provide power from power source(s) 114 to the various mechanical components 110, for example. Further, robotic system 100 may include electric motors. Other examples of electrical components 116 may exist as well.

Robotic system 100 may include a body, which may connect to or house appendages and components of the robotic system. As such, the structure of the body may vary within examples and may further depend on particular operations that a given robot may have been designed to perform. For example, a robot developed to carry heavy loads may have a wide body that enables placement of the load. Similarly, a robot designed to operate in tight spaces may have a relatively tall, narrow body. Further, the body or the other components may be developed using various types of materials, such as metals or plastics. Within other examples, a robot may have a body with a different structure or made of various types of materials.

The body or the other components may include or carry sensor(s) 112. These sensors may be positioned in various locations on the robotic system 100, such as on a body, a perception housing, or an end effector, among other examples.

Robotic system 100 may be configured to carry a load, such as a type of cargo that is to be transported. In some examples, the load may be placed by the robotic system 100 into a bin or other container attached to the robotic system 100. The load may also represent external batteries or other types of power sources (e.g., solar panels) that the robotic system 100 may utilize. Carrying the load represents one example use for which the robotic system 100 may be configured, but the robotic system 100 may be configured to perform other operations as well.

As noted above, robotic system 100 may include various types of appendages, wheels, end effectors, gripping devices and so on. In some examples, robotic system 100 may include a mobile base with wheels, treads, or some other form of locomotion. Additionally, robotic system 100 may include a robotic arm or some other form of robotic manipulator. In the case of a mobile base, the base may be considered as one of mechanical components 110 and may include wheels, powered by one or more of actuators, which allow for mobility of a robotic arm in addition to the rest of the body.

FIG. 2 illustrates a mobile robot, in accordance with example embodiments. FIG. 3 illustrates an exploded view of the mobile robot, in accordance with example embodiments. More specifically, a robot 200 may include a mobile base 202, a midsection 204, an arm 206, an end-of-arm system (EOAS) 208, a mast 210, a perception housing 212, and a perception suite 214. The robot 200 may also include a compute box 216 stored within mobile base 202.

The mobile base 202 includes two drive wheels positioned at a front end of the robot 200 in order to provide locomotion to robot 200. The mobile base 202 also includes additional casters (not shown) to facilitate motion of the mobile base 202 over a ground surface. The mobile base 202 may have a modular architecture that allows compute box 216 to be easily removed. Compute box 216 may serve as a removable control system for robot 200 (rather than a mechanically integrated control system). After removing external shells, the compute box 216 can be easily removed, tested, debugged, and/or replaced. Modularity within compute box 216 may additionally allow the control and perception systems to be independently upgraded. Physical modules inside compute box 216 may also be arranged to minimize cables. The boards inside may interlock in a structure to expose connectors where they are needed externally instead of running cables internal to the compute box 216. The mobile base 202 may also be designed to allow for additional modularity. For example, the mobile base 202 may also be designed so that a power system, a battery, and/or external bumpers can all be easily removed and/or replaced.

The midsection 204 may be attached to the mobile base 202 at a front end of the mobile base 202. The midsection 204 includes a mounting column which is fixed to the mobile base 202. The midsection 204 additionally includes a rotational joint for arm 206. More specifically, the midsection 204 includes the first two degrees of freedom for arm 206 (a shoulder yaw J0 joint and a shoulder pitch J1 joint). The mounting column and the shoulder yaw J0 joint may form a portion of a stacked tower at the front of mobile base 202. The mounting column and the shoulder yaw J0 joint may be coaxial. The length of the mounting column of midsection 204 may be chosen to provide the arm 206 with sufficient height to perform manipulation tasks at commonly encountered height levels (e.g., coffee table top and countertop levels). The length of the mounting column of midsection 204 may also allow the shoulder pitch J1 joint to rotate the arm 206 over the mobile base 202 without contacting the mobile base 202.

The arm 206 may be a 7DOF robotic arm when connected to the midsection 204. As noted, the first two DOFs of the arm 206 may be included in the midsection 204. The remaining five DOFs may be included in a standalone section of the arm 206 as illustrated in FIGS. 2 and 3. The arm 206 may be made up of plastic monolithic link structures. Inside the arm 206 may be housed standalone actuator modules, local motor drivers, and thru bore cabling. Exemplary joint types, ROMs, link lengths, and joint offsets of the arm 206 are described in more detail below.

The EOAS 208 may be an end effector at the end of arm 206. EOAS 208 may allow the robot 200 to manipulate objects in the environment. As shown in FIGS. 2 and 3, EOAS 208 may be a gripper, such as an underactuated pinch gripper. The gripper may include one or more contact sensors such as force/torque sensors and/or non-contact sensors such as one or more cameras to facilitate object detection and gripper control. EOAS 208 may also be a different type of gripper such as a suction gripper or a different type of tool such as a drill or a brush. EOAS 208 may also be swappable or include swappable components such as gripper digits.

The mast 210 may be a relatively long, narrow component between the shoulder yaw J0 joint for arm 206 and perception housing 212. The mast 210 may be part of the stacked tower at the front of mobile base 202. The mast 210 may be fixed relative to the mobile base 202. The mast 210 may be coaxial with the midsection 204. The length of the mast 210 may facilitate perception by perception suite 214 of objects being manipulated by EOAS 208. The mast 210 may have a length such that when the shoulder pitch J1 joint is rotated vertical up, a topmost point of a bicep of the arm 206 is approximately aligned with a top of the mast 210. The length of the mast 210 may then be sufficient to prevent a collision between the perception housing 212 and the arm 206 when the shoulder pitch J1 joint is rotated vertical up.

As shown in FIGS. 2 and 3, the mast 210 may include a 3D lidar sensor configured to collect depth information about the environment. The 3D lidar sensor may be coupled to a carved out portion of the mast 210 and fixed at a downward angle. The lidar position may be optimized for localization, navigation, and for front cliff detection.

The perception housing 212 may include at least one sensor making up perception suite 214. The perception housing 212 may be connected to a pan/tilt control to allow for reorienting of the perception housing 212 (e.g., to view objects being manipulated by EOAS 208). The perception housing 212 may be a part of the stacked tower fixed to the mobile base 202. A rear portion of the perception housing 212 may be coaxial with the mast 210.

The perception suite 214 may include a suite of sensors configured to collect sensor data representative of the environment of the robot 200. The perception suite 214 may include an infrared (IR)-assisted stereo depth sensor. The perception suite 214 may additionally include a wide-angled red-green-blue (RGB) camera for human-robot interaction and context information. The perception suite 214 may additionally include a high resolution RGB camera for object classification. A face light ring surrounding the perception suite 214 may also be included for improved human-robot interaction and scene illumination.

FIG. 4 illustrates a robotic arm, in accordance with example embodiments. The robotic arm includes 7 DOFs: a shoulder yaw J0 joint, a shoulder pitch J1 joint, a bicep roll J2 joint, an elbow pitch J3 joint, a forearm roll J4 joint, a wrist pitch J5 joint, and wrist roll J6 joint. Each of the joints may be coupled to one or more actuators. The actuators coupled to the joints may be operable to cause movement of links down the kinematic chain (as well as any end effector attached to the robot arm).

The shoulder yaw J0 joint allows the robot arm to rotate toward the front and toward the back of the robot. One beneficial use of this motion is to allow the robot to pick up an object in front of the robot and quickly place the object on the rear section of the robot (as well as the reverse motion). Another beneficial use of this motion is to quickly move the robot arm from a stowed configuration behind the robot to an active position in front of the robot (as well as the reverse motion).

The shoulder pitch J1 joint allows the robot to lift the robot arm (e.g., so that the bicep is up to perception suite level on the robot) and to lower the robot arm (e.g., so that the bicep is just above the mobile base). This motion is beneficial to allow the robot to efficiently perform manipulation operations (e.g., top grasps and side grasps) at different target height levels in the environment. For instance, the shoulder pitch J1 joint may be rotated to a vertical up position to allow the robot to easily manipulate objects on a table in the environment. The shoulder pitch J1 joint may be rotated to a vertical down position to allow the robot to easily manipulate objects on a ground surface in the environment.

The bicep roll J2 joint allows the robot to rotate the bicep to move the elbow and forearm relative to the bicep. This motion may be particularly beneficial for facilitating a clear view of the EOAS by the robot's perception suite. By rotating the bicep roll J2 joint, the robot may kick out the elbow and forearm to improve line of sight to an object held in a gripper of the robot.

Moving down the kinematic chain, alternating pitch and roll joints (a shoulder pitch J1 joint, a bicep roll J2 joint, an elbow pitch J3 joint, a forearm roll J4 joint, a wrist pitch J5 joint, and wrist roll J6 joint) are provided to improve the manipulability of the robotic arm. The axes of the wrist pitch J5 joint, the wrist roll J6 joint, and the forearm roll J4 joint are intersecting for reduced arm motion to reorient objects. The wrist roll J6 point is provided instead of two pitch joints in the wrist in order to improve object rotation.

In some examples, a robotic arm such as the one illustrated in FIG. 4 may be capable of operating in a teach mode. In particular, teach mode may be an operating mode of the robotic arm that allows a user to physically interact with and guide robotic arm towards carrying out and recording various movements. In a teaching mode, an external force is applied (e.g., by the user) to the robotic arm based on a teaching input that is intended to teach the robot regarding how to carry out a specific task. The robotic arm may thus obtain data regarding how to carry out the specific task based on instructions and guidance from the user. Such data may relate to a plurality of configurations of mechanical components, joint position data, velocity data, acceleration data, torque data, force data, and power data, among other possibilities.

During teach mode the user may grasp onto the EOAS or wrist in some examples or onto any part of the robotic arm in other examples and provide an external force by physically moving the robotic arm. In particular, the user may guide the robotic arm towards grasping onto an object and then moving the object from a first location to a second location. As the user guides the robotic arm during teach mode, the robot may obtain and record data related to the movement such that the robotic arm may be configured to independently carry out the task at a future time during independent operation (e.g., when the robotic arm operates independently outside of teach mode). In some examples, external forces may also be applied by other entities in the physical workspace such as by other objects, machines, or robotic systems, among other possibilities.

FIG. 5 is a table that illustrates joint ranges of motion 500, in accordance with example embodiments. In some examples, the joint ROMs may be chosen to optimize a right-handed elbow-up position in which the shoulder yaw J0 joint is rotated toward and perpendicular to the right side of the mobile base, the shoulder pitch J1 joint is rotated vertical up, the elbow pitch J3 joint is rotated vertical up, and the wrist pitch J5 joint is rotated vertical up. Alternative ranges of motions for any or all of the joints may also be used in other examples.

The shoulder yaw J0 joint has an asymmetric ROM that allows the shoulder yaw J0 joint to rotate 80 degrees forward and 260 degrees backward from the right-handed position. This rotatable joint enables rotation of the 7DOF robotic arm relative to the mounting column with a ROM that excludes an angle directly in front of the mobile robotic device. This ROM allows the robot to easily rotate the arm from behind the robot (e.g., from a stowed configuration) to either the left or right side of the front of the robot.

The shoulder pitch J1 joint has an asymmetric ROM that allows the shoulder pitch J1 joint to rotate 185 degrees forward and 155 degrees backward from the vertical up position. This ROM excludes a downward and back angle, and allows for stowing from the back.

The bicep roll J2 joint has an asymmetric ROM that allows the bicep roll J2 joint to rotate 215 degrees forward and 125 degrees backward from a position in which the forearm is rotated directly opposite the shoulder yaw J0 joint. This ROM allows for moving the elbow and forearm out of the way when viewing the EOAS with a perception system in the perception housing.

The elbow pitch J3 joint has an asymmetric ROM that allows the elbow pitch J3 joint to rotate 120 degrees forward and 220 degrees backward from the elbow-up position. This ROM excludes a downward and back angle, and allows for unstowing from the outside.

The forearm roll J4 joint has a symmetric ROM that allows the forearm roll J4 joint to rotate 170 degrees in either direction. This ROM provides a centered wrist pitch.

The wrist pitch J5 joint has a symmetric ROM that allows the wrist pitch J5 point to rotate 105 degrees in either direction from the vertical up position.

The wrist roll J6 joint has a symmetric ROM that allows the wrist roll J6 joint to rotate 170 degrees in either direction. This ROM is centered for a horizontal grasp.

FIGS. 6A, 6B, and 6C illustrate robot dimensions, in accordance with example embodiments. More specifically, FIG. 6A shows a front view, FIG. 6B shows a side view, and FIG. 6C shows a top down view of a robot 600. As illustrated, a relatively tall and narrow form factor may be used to optimize range of motion while minimizing space utilization.

In some examples, the height 602 of the robot 600 is more than double the length 606 of the mobile base of the robot 600. In further examples, the height 602 of the robot 600 is more than triple the width 604 of the mobile base of the robot 600. For instance, in one example implementation, the height 602 is 1351 mm, the length 606 is 535.6 mm, and the width 604 is 396.3 mm. The midsection of the robot 600 may be made long enough to allow the shoulder to rotate vertical down without colliding with the mobile base. Furthermore, the mast of the robot 600 may be long enough to allow the shoulder to rotate vertical up without colliding with the perception housing. A relatively long mast may facilitate perception of the EOAS without having occlusions caused by the robot arm.

In the arm, the length 612 of the bicep of the robot 600 may be approximately the same length as the length 614 of the forearm of the robot 600. More specifically, in some examples, the length 614 of the forearm may be within 10% of the length 612 of the bicep. For instance, the length 612 of the bicep may be 400 mm and the length 614 of the forearm may be 365 mm. The approximately matching lengths allow the bicep and forearm to compensate for each other when rotated opposite each (e.g., in the shoulder-down, elbow-up position).

In further examples, the offset 624 between the shoulder yaw J0 joint and the bicep roll J2 joint may set equal to or approximately equal to the offset 622 between the bicep roll J2 joint and the forearm roll J4 joint. For instance, the offset 622 and the offset 624 may both be set to 165 mm. In further examples, the offset 624 may be within 10% of the offset 622. The matching or approximately matching offsets may allow for easy stowing and simplified kinematics.

FIGS. 7A and 7B, FIGS. 8A and 8B, and FIGS. 9A and 9B illustrate stowed configurations into which some example robots described herein are capable of folding. In some examples, a robot may only be configured to fold into a single stowed configuration (e.g., the configuration shown in FIGS. 7A and 7B, the configuration shown in FIGS. 8A and 8B, or the configuration shown in FIGS. 9A and 9B). In other examples, a robot may be capable of folding into multiple stowed configurations (e.g., the configuration shown in each of FIGS. 7A and 7B, FIGS. 8A and 8B, and FIGS. 9A and 9B). The robot may then be programmed to choose between stowed configurations based on various factors, including a current active position of the robot arm before folding into the stowed configuration or a planned future active position of the robot arm after folding into the stowed configuration.

FIGS. 7A and 7B show perspective and top-down views of a robot 700 in a shoulder-down, elbow-up stowed configuration, in accordance with example embodiments. This configuration of the arm 702 may involve the shoulder pitch J1 joint being rotated vertical down and the elbow pitch J3 joint being rotated vertical up. The configuration may also involve the wrist pitch J5 point being rotated vertical up. The configuration may also involve the shoulder yaw J0 joint being rotated toward the rear section of the mobile base 704 of the robot 700. In the example illustrated, the robot 700 has a container 706 on the rear section of the robot 700. The shoulder yaw J0 joint may be angled as shown so that the robot arm 702 may fit within a remaining portion of the rear section of the robot. In this stowed configuration, the robot arm 702 may fit within the footprint of the mobile base 704 when viewed from above.

In an alternative variation of the shoulder-down, elbow-up stowed configuration, the shoulder yaw J0 joint may be rotated directly opposite the front of the mobile robot. This configuration may be used for a robot which does not have a container on the rear section of the mobile base. In this configuration, the robot arm may extend all the way to the rear end of the mobile base, or approximately to the end of the mobile base. The configuration may minimize space utilization while also facilitating transition of the robot art from the stowed configuration to an active position.

FIGS. 8A and 8B show perspective and top-down views of a robot 800 in a shoulder-up, elbow-down stowed configuration, in accordance with example embodiments. This configuration of the arm 802 may be considered a mirror position of the shoulder-down, elbow-up position with the shoulder yaw J0 joint rotated directly opposite the front of the mobile robot, as described in the preceding paragraph. The shoulder-up, elbow-down configuration may involve the shoulder pitch J1 joint being rotated vertical up and the elbow pitch J3 joint being rotated vertical down. The configuration may also involve the wrist pitch J5 point being rotated vertical down. In the example illustrated, the robot has a container 806 on the rear section of the robot 800. The robot arm 802 may be positioned so that the robot arm 802 is vertically above the container 806. In this stowed configuration, the robot arm 802 may fit within the footprint of the mobile base 804 when viewed from above.

FIGS. 9A and 9B show perspective and top-down views of another stowed configuration for a robot 900 in which the robot arm 902 is folded within the footprint of the mobile base 904 when viewed from above. In this configuration, the shoulder and the elbow are angled so that the robot arm 902 is above container 906 and approaches both sides of the mobile base 904. The robot 900 may also be capable of folding into a mirrored stowed configuration in which the positions of the bicep and forearm are reversed.

Other stowed configurations are also possible. By stowing the robot arm within a stowed configuration that keeps the robot arm contained or nearly contained within the footprint of the mobile base, robot navigation with the mobile base may be facilitated. The robot arm kinematics, including the rotational J0 joint, may facilitate transitioning to and from a stowed configuration.

FIG. 10, FIG. 11, FIG. 12, and FIG. 13 illustrate robotic arm configurations to facilitate perception of an EOAS, in accordance with example embodiments. The robotic arm morphology, kinematics, link lengths, and ROMs may be optimized to enable a line of sight between the perception system in the perception housing and the EOAS when the EOAS is positioned at target work heights, such as proximate to a ground floor, at a height of the mounting column (e.g., coffee table level), and when the end effector is at a height of the perception housing (e.g., kitchen counter level). The robotic arm may also be optimized for certain types of grasps, such as a top grasp and a side grasp.

FIG. 10 illustrates views 1002, 1004, 1006, and 1008 of a top grasp at floor level in which the forearm is vertical or nearly vertical. FIG. 11 illustrates views 1102, 1104, 1106, and 1108 of a top grasp at coffee table level in which the forearm is vertical or nearly vertical. FIG. 12 illustrates views 1202, 1204, 1206, and 1208 of a side grasp at coffee table level in which the forearm is horizontal or nearly horizontal. FIG. 13 illustrates views 1302, 1304, 1306, and 1308 of a side grasp at kitchen counter level in which the forearm is horizontal or nearly horizontal. In each example, a field of view of one or more perception sensors in the perception housing is shown. The arm position may be selected to facilitate perception of the EOAS in each of the illustrated poses. By providing the arm with 7 DOFs, multiple arm configurations may be available to position the EOAS at a given pose in the environment. Poses may be selected that maximize the area around the EOAS that is within the field of view of the perception sensors of the perception housing. The bicep roll J2 joint may be particularly beneficial in enabling the robot arm to roll the elbow and forearm out of the way of the perception sensors of the perception housing.

In further examples, the robot morphology, kinematics, link lengths, and/or ROMs may be adjusted to accommodate different target work heights and/or grasp types.

FIGS. 14A and 14B show attachment of an appendage to a rotatable joint, in accordance with example embodiments. More specifically, a rotable J0 joint 1402 may be included as part of a stacked tower arrangement on a mobile robotic device. An attachment point 1404 may be provided that allows for attachment of an appendage to the mobile robotic device. For instance, as illustrated, tray 1406 may be attached at attachment point 1404. Attachment of tray 1406 to attachment point 1404 may allow for rotation of tray 1406 by rotatable joint 1402. More specifically, rotation of rotatable joint 1402 may rotate tray 1406 through a horizontal plane. In some examples, attachment point 1404 may be connected to a separate rotatable J1 joint that is configured to separately rotate an attached appendage (e.g., tray 1406) through a plane that is perpendicular to the plane through which the rotatable J0 joint rotates the appendage (e.g., through a plane that is perpendicular to the horizontal plane). For instance, in some examples, tray 1406 or a similar appendage may be rotated downward to clamp an item between tray 1406 and a mobile base of a robot.

FIG. 15 shows positions of a rotatable joint having an attached appendage, in accordance with example embodiments. More specifically, rotation of a rotable J0 joint allows a mobile robotic device to position an attached appendage at different positions, including a rear position 1502, a side position 1504, and a front position 1506. In FIG. 15, the attached appendage is illustrated as a tray (e.g., for serving food, drinks, or other items to users). In further examples, other types of appendages may also be attached to the mobile robotic device in a similar manner. For instance, FIG. 16 shows positions of a rotatable joint having a different attached appendage, in accordance with example embodiments. More specifically, a basket (e.g., for collecting waste or other items from users) is illustrated at different positions, including a rear position 1602, a side position 1604, and a front position 1606.

In some examples, including an attachment point to connect an appendage to the rotatable J0 joint allows for the swapping of different appendages for different robot tasks. For instance, a tray may be attached for tasks involving item delivery, a basket may be attached for tasks involving item collection, and no appendage may be attached for tasks requiring maximum carrying capacity on the back of the robot. For a mobile robotic device including an attachment point to connect an appendage to the rotatable J0 joint, the rest of the mobile robotic device may include any of the aspects described herein with respect to a mobile robotic device having an attached 7DOF robotic arm. Some example embodiments therefore include a mobile robotic device such as illustrated in FIGS. 15 and 16, including a mobile base, a mounting column fixed to the mobile base, a rotatable joint that enables rotation of an appendage relative to the mounting column, and a perception housing comprising at least one sensor, where the mounting column, the rotatable joint, and the perception housing are arranged in a stacked tower such that the rotatable joint is above the mounting column and below the perception housing.

In further examples, a robotic arm such as the previously illustrated 7DOF robotic arm or some portion thereof may also be attachable to an attachment point such as illustrated in FIG. 13A. In some examples, the robotic arm may therefore also be removable to allow for the attachment of other types of appendages.

III. CONCLUSION

The present disclosure is not to be limited in terms of the particular embodiments described in this application, which are intended as illustrations of various aspects. Many modifications and variations can be made without departing from its spirit and scope, as will be apparent to those skilled in the art. Functionally equivalent methods and apparatuses within the scope of the disclosure, in addition to those enumerated herein, will be apparent to those skilled in the art from the foregoing descriptions. Such modifications and variations are intended to fall within the scope of the appended claims.

The above detailed description describes various features and functions of the disclosed systems, devices, and methods with reference to the accompanying figures. In the figures, similar symbols typically identify similar components, unless context dictates otherwise. The example embodiments described herein and in the figures are not meant to be limiting. Other embodiments can be utilized, and other changes can be made, without departing from the spirit or scope of the subject matter presented herein. It will be readily understood that the aspects of the present disclosure, as generally described herein, and illustrated in the figures, can be arranged, substituted, combined, separated, and designed in a wide variety of different configurations, all of which are explicitly contemplated herein.

A block that represents a processing of information may correspond to circuitry that can be configured to perform the specific logical functions of a herein-described method or technique. Alternatively or additionally, a block that represents a processing of information may correspond to a module, a segment, or a portion of program code (including related data). The program code may include one or more instructions executable by a processor for implementing specific logical functions or actions in the method or technique. The program code or related data may be stored on any type of computer readable medium such as a storage device including a disk or hard drive or other storage medium.

The computer readable medium may also include non-transitory computer readable media such as computer-readable media that stores data for short periods of time like register memory, processor cache, and random access memory (RAM). The computer readable media may also include non-transitory computer readable media that stores program code or data for longer periods of time, such as secondary or persistent long term storage, like read only memory (ROM), optical or magnetic disks, compact-disc read only memory (CD-ROM), for example. The computer readable media may also be any other volatile or non-volatile storage systems. A computer readable medium may be considered a computer readable storage medium, for example, or a tangible storage device.

Moreover, a block that represents one or more information transmissions may correspond to information transmissions between software or hardware modules in the same physical device. However, other information transmissions may be between software modules or hardware modules in different physical devices.

The particular arrangements shown in the figures should not be viewed as limiting. It should be understood that other embodiments can include more or less of each element shown in a given figure. Further, some of the illustrated elements can be combined or omitted. Yet further, an example embodiment can include elements that are not illustrated in the figures.

While various aspects and embodiments have been disclosed herein, other aspects and embodiments will be apparent to those skilled in the art. The various aspects and embodiments disclosed herein are for purposes of illustration and are not intended to be limiting, with the true scope being indicated by the following claims. 

What is claimed is:
 1. A mobile robotic device comprising: a mobile base; a mounting column fixed to the mobile base; a seven-degree-of-freedom (7DOF) robotic arm, comprising a rotatable joint that enables rotation of the 7DOF robotic arm relative to the mounting column; and a perception housing comprising at least one sensor, wherein the mounting column, the rotatable joint of the 7DOF arm, and the perception housing are arranged in a stacked tower such that the rotatable joint of the 7DOF arm is above the mounting column and below the perception housing.
 2. The mobile robotic device of claim 1, further comprising at least one drive wheel, wherein the stacked tower is positioned above the at least one drive wheel.
 3. The mobile robotic device of claim 1, wherein the mounting column is attached at a front end of the mobile base, wherein the mobile base further comprises a top surface positioned at a rear end of the mobile base.
 4. The mobile robotic device of claim 3, wherein the top surface of the mobile base comprises a container for storing objects moved by the 7DOF robotic arm.
 5. The mobile robotic device of claim 1, wherein the 7DOF robotic arm is configured to fold into a stowed configuration, wherein the 7DOF robotic arm is contained within a footprint of the mobile base when the 7DOF robotic arm is in the stowed configuration.
 6. The mobile robotic device of claim 1, wherein the rotatable joint is a shoulder yaw J0 joint, wherein the 7DOF robotic arm further comprises a shoulder pitch J1 joint, a bicep roll J2 joint, an elbow pitch J3 joint, a forearm roll J4 joint, a wrist pitch J5 joint, and a wrist roll J6 joint.
 7. The mobile robotic device of claim 6, wherein a first offset between the shoulder yaw J0 joint and a bicep roll J2 joint is approximately equal to a second offset between the bicep roll J2 joint and the forearm roll J4 joint.
 8. The mobile robotic device of claim 6, wherein a first length of a bicep of the 7DOF robotic arm is approximately equal to a second length of a forearm of the 7DOF robotic arm.
 9. The mobile robotic device of claim 6, wherein the 7DOF robotic arm is configured to fold into a shoulder up stowed configuration, the shoulder up stowed configuration comprising the shoulder yaw J0 joint being rotated toward a rear end of the mobile base, the shoulder pitch J1 joint being rotated vertical up, the elbow pitch J3 joint being rotated vertical down, and the wrist pitch J5 joint being rotated vertical down.
 10. The mobile robotic device of claim 9, wherein when in the shoulder up stowed configuration, the 7DOF robotic arm overhangs the mobile base such that a rearmost point of the 7DOF robotic arm is approximately aligned with the rear end of the mobile base.
 11. The mobile robotic device of claim 6, wherein the 7DOF robotic arm is configured to fold into a shoulder down stowed configuration, the shoulder down stowed configuration comprising the shoulder yaw J0 joint being rotated toward a rear end of the mobile base, the shoulder pitch J1 joint being rotated vertical down, the elbow pitch J3 joint being rotated vertical up, and the wrist pitch J5 joint being rotated vertical up.
 12. The mobile robotic device of claim 6, wherein when the shoulder yaw J0 joint is rotated opposite a front end of the mobile base to which the mounting column is fixed and the shoulder pitch J1 joint is rotated vertical down, a bottommost point of a bicep of the 7DOF robotic arm is above a top surface of the mobile base.
 13. The mobile robotic device of claim 6, wherein the stacked tower further comprises a mast between the rotatable joint and the perception housing, wherein the mast has a length such that when the shoulder pitch J1 joint is rotated vertical up, a topmost point of a bicep of the 7DOF robotic arm is approximately aligned with a top of the mast, wherein the length of the mast is sufficient to prevent collision between the perception housing and the 7DOF robotic arm when the shoulder pitch J1 joint is rotated vertical up.
 14. The mobile robotic device of claim 6, wherein each joint of the 7DOF robotic arm has a range of motion which is optimized for a right handed elbow up position in which the shoulder yaw J0 joint is rotated toward a right side of the mobile base, the shoulder pitch J1 joint is rotated vertical up, the elbow pitch J3 joint is rotated vertical up, and the wrist pitch J5 joint is rotated vertical up.
 15. The mobile robotic device of claim 6, wherein the 7DOF robotic arm comprises an end effector, wherein the 7DOF robotic arm is configured to enable a line of sight between the at least one sensor of the perception housing and the end effector by rotating the bicep roll J2 joint.
 16. The mobile robotic device of claim 1, wherein the 7DOF robotic arm comprises an end effector, wherein the 7DOF robotic arm is configured to enable a line of sight between the at least one sensor of the perception housing and the end effector at a set of target heights, the set of target heights spanning a range that includes the end effector positioned proximate to a ground floor, the end effector positioned at a height of the mounting column, and the end effector positioned at a height of the perception housing.
 17. The mobile robotic device of claim 1, wherein the rotatable joint that enables rotation of the 7DOF robotic arm relative to the mounting column has a range of motion that excludes an angle in front of the mobile robotic device.
 18. A robotic arm comprising a shoulder yaw J0 joint, a shoulder pitch J1 joint, a bicep roll J2 joint, an elbow pitch J3 joint, a forearm roll J4 joint, a wrist pitch J5 joint, and a wrist roll J6 joint, wherein a first offset between the shoulder yaw J0 joint and a bicep roll J2 joint is approximately equal to a second offset between the bicep roll J2 joint and the forearm roll J4 joint, and wherein the bicep is approximately equal in length to the forearm.
 19. A method comprising: causing a shoulder yaw J0 joint of a 7DOF robotic arm of a mobile robotic device to rotate away from a first end of a mobile base to which a mounting column is fixed, wherein the mounting column, the shoulder yaw J0 joint of the 7DOF arm, and a perception housing of the mobile robotic device are arranged in a stacked tower such that the shoulder yaw J0 joint of the 7DOF arm is above the mounting column and below the perception housing; causing a shoulder pitch J1 joint of the 7DOF robotic arm of the mobile robotic device to rotate vertical up; causing an elbow pitch J3 joint to rotate vertical down; and causing a wrist pitch J5 joint to rotate vertical down to position the 7DOF robotic arm in a shoulder up stowed configuration.
 20. The method of claim 19, wherein the mounting column is mounted to a front end of the mobile base over at least one drive wheel of the mobile robotic device, the method further comprising causing the at least one drive wheel of the mobile robotic device to navigate the mobile robotic device forward while the 7DOF robotic arm is in the shoulder up stowed configuration over a rear end of the mobile base.
 21. The method of claim 20, further comprising: stopping navigation of the mobile robotic device; causing the 7DOF robotic arm to manipulate an object in front of the mobile robotic device; returning the 7DOF robotic arm to the shoulder up stowed configuration; and subsequently causing the at least one drive wheel to navigate the mobile robotic device forward while the 7DOF robotic arm is in the shoulder up stowed configuration over the rear end of the mobile base.
 22. A mobile robotic device comprising: a mobile base; a mounting column fixed to the mobile base; a rotatable joint that enables rotation of an appendage relative to the mounting column; and a perception housing comprising at least one sensor, wherein the mounting column, the rotatable joint, and the perception housing are arranged in a stacked tower such that the rotatable joint is above the mounting column and below the perception housing. 